package io.qar.rawMaterialsConfig.excel;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 原材料配置表
 *
 * @author yyyyjinying 1020066395@qq.com
 * @since 3.0 2024-07-21
 */
@Data
@ContentRowHeight(20)
@HeadRowHeight(20)
@ColumnWidth(25)
public class RawMaterialsConfigExcel {
    @ExcelProperty(value = "原材料配置的唯一标识符", index = 0)
    private Long configId;
    @ExcelProperty(value = "菜品ID，关联到菜单表中的菜品", index = 1)
    private Long dishId;
    @ExcelProperty(value = "原材料名称", index = 2)
    private String materialName;
    @ExcelProperty(value = "原材料的规格，使用JSON格式存储", index = 3)
    private String materialSpecification;
    @ExcelProperty(value = "计量单位，如克、升、件等", index = 4)
    private String unitOfMeasure;
    @ExcelProperty(value = "每单位菜品所需的原材料数量", index = 5)
    private BigDecimal quantity;
    @ExcelProperty(value = "供应商ID，关联到供应商表", index = 6)
    private Long supplierId;
    @ExcelProperty(value = "原材料应满足的质量标准", index = 7)
    private String qualityStandard;
    @ExcelProperty(value = "原材料的单价", index = 8)
    private BigDecimal costPerUnit;
    @ExcelProperty(value = "原材料的总成本，基于数量和单价计算得出", index = 9)
    private BigDecimal totalCost;
    @ExcelProperty(value = "可替代的原材料列表，使用JSON格式存储", index = 10)
    private String alternativeMaterials;
    @ExcelProperty(value = "原材料的有效期或保质期", index = 11)
    private Date expirationDate;
    @ExcelProperty(value = "关于原材料的任何附加说明或备注", index = 12)
    private String notes;
    @ExcelProperty(value = "记录原材料配置创建的时间", index = 13)
    private Date createdAt;
    @ExcelProperty(value = "记录原材料配置最后更新的时间", index = 14)
    private Date updatedAt;
}